package com.baichuan.zntx.domain.vo;

import java.time.LocalDateTime;
import java.util.Date;

import com.baichuan.common.translation.annotation.Translation;
import com.baichuan.common.translation.constant.TransConstant;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.baichuan.zntx.domain.Task;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baichuan.common.excel.annotation.ExcelDictFormat;
import com.baichuan.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;
import java.util.Date;



/**
 * 任务记录视图对象 t_task
 *
 * @author MaZhanliang
 * @date 2024-05-22
 */
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = Task.class)
public class TaskVo implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     *
     */
    @ExcelProperty(value = "")
    private String id;

    /**
     * 设备
     */
    @ExcelProperty(value = "设备")
    private String deviceId;

    /**
     * 任务类型
     */
    @ExcelProperty(value = "任务类型", converter = ExcelDictConvert.class)
    @ExcelDictFormat(dictType = "task_type")
    private Integer taskType;

    /**
     * 是否执行
     */
    @ExcelProperty(value = "任务状态")
    private Integer status;

    /**
     * 执行时间
     */
    @ExcelProperty(value = "执行时间")
    private LocalDateTime excuteTime;

    /**
     * 下发时间
     */
    @ExcelProperty(value = "下发时间")
    private LocalDateTime createTime;

    /**
     * 下发人
     */
    @ExcelProperty(value = "下发人")
    @Translation(type = TransConstant.USER_ID_TO_NICKNAME)
    private Long createBy;

    /**
     * 执行人
     */
    @ExcelProperty(value = "执行人")
    @Translation(type = TransConstant.USER_ID_TO_NICKNAME)
    private Long updateBy;
    private LocalDateTime startTime;

}
